package com.entity;

import java.util.ArrayList;
import java.util.List;

public class BuyerExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public BuyerExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andBidIsNull() {
            addCriterion("Bid is null");
            return (Criteria) this;
        }

        public Criteria andBidIsNotNull() {
            addCriterion("Bid is not null");
            return (Criteria) this;
        }

        public Criteria andBidEqualTo(Integer value) {
            addCriterion("Bid =", value, "bid");
            return (Criteria) this;
        }

        public Criteria andBidNotEqualTo(Integer value) {
            addCriterion("Bid <>", value, "bid");
            return (Criteria) this;
        }

        public Criteria andBidGreaterThan(Integer value) {
            addCriterion("Bid >", value, "bid");
            return (Criteria) this;
        }

        public Criteria andBidGreaterThanOrEqualTo(Integer value) {
            addCriterion("Bid >=", value, "bid");
            return (Criteria) this;
        }

        public Criteria andBidLessThan(Integer value) {
            addCriterion("Bid <", value, "bid");
            return (Criteria) this;
        }

        public Criteria andBidLessThanOrEqualTo(Integer value) {
            addCriterion("Bid <=", value, "bid");
            return (Criteria) this;
        }

        public Criteria andBidIn(List<Integer> values) {
            addCriterion("Bid in", values, "bid");
            return (Criteria) this;
        }

        public Criteria andBidNotIn(List<Integer> values) {
            addCriterion("Bid not in", values, "bid");
            return (Criteria) this;
        }

        public Criteria andBidBetween(Integer value1, Integer value2) {
            addCriterion("Bid between", value1, value2, "bid");
            return (Criteria) this;
        }

        public Criteria andBidNotBetween(Integer value1, Integer value2) {
            addCriterion("Bid not between", value1, value2, "bid");
            return (Criteria) this;
        }

        public Criteria andMidIsNull() {
            addCriterion("Mid is null");
            return (Criteria) this;
        }

        public Criteria andMidIsNotNull() {
            addCriterion("Mid is not null");
            return (Criteria) this;
        }

        public Criteria andMidEqualTo(Integer value) {
            addCriterion("Mid =", value, "mid");
            return (Criteria) this;
        }

        public Criteria andMidNotEqualTo(Integer value) {
            addCriterion("Mid <>", value, "mid");
            return (Criteria) this;
        }

        public Criteria andMidGreaterThan(Integer value) {
            addCriterion("Mid >", value, "mid");
            return (Criteria) this;
        }

        public Criteria andMidGreaterThanOrEqualTo(Integer value) {
            addCriterion("Mid >=", value, "mid");
            return (Criteria) this;
        }

        public Criteria andMidLessThan(Integer value) {
            addCriterion("Mid <", value, "mid");
            return (Criteria) this;
        }

        public Criteria andMidLessThanOrEqualTo(Integer value) {
            addCriterion("Mid <=", value, "mid");
            return (Criteria) this;
        }

        public Criteria andMidIn(List<Integer> values) {
            addCriterion("Mid in", values, "mid");
            return (Criteria) this;
        }

        public Criteria andMidNotIn(List<Integer> values) {
            addCriterion("Mid not in", values, "mid");
            return (Criteria) this;
        }

        public Criteria andMidBetween(Integer value1, Integer value2) {
            addCriterion("Mid between", value1, value2, "mid");
            return (Criteria) this;
        }

        public Criteria andMidNotBetween(Integer value1, Integer value2) {
            addCriterion("Mid not between", value1, value2, "mid");
            return (Criteria) this;
        }

        public Criteria andBnameIsNull() {
            addCriterion("Bname is null");
            return (Criteria) this;
        }

        public Criteria andBnameIsNotNull() {
            addCriterion("Bname is not null");
            return (Criteria) this;
        }

        public Criteria andBnameEqualTo(String value) {
            addCriterion("Bname =", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameNotEqualTo(String value) {
            addCriterion("Bname <>", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameGreaterThan(String value) {
            addCriterion("Bname >", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameGreaterThanOrEqualTo(String value) {
            addCriterion("Bname >=", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameLessThan(String value) {
            addCriterion("Bname <", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameLessThanOrEqualTo(String value) {
            addCriterion("Bname <=", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameLike(String value) {
            addCriterion("Bname like", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameNotLike(String value) {
            addCriterion("Bname not like", value, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameIn(List<String> values) {
            addCriterion("Bname in", values, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameNotIn(List<String> values) {
            addCriterion("Bname not in", values, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameBetween(String value1, String value2) {
            addCriterion("Bname between", value1, value2, "bname");
            return (Criteria) this;
        }

        public Criteria andBnameNotBetween(String value1, String value2) {
            addCriterion("Bname not between", value1, value2, "bname");
            return (Criteria) this;
        }

        public Criteria andBsexIsNull() {
            addCriterion("Bsex is null");
            return (Criteria) this;
        }

        public Criteria andBsexIsNotNull() {
            addCriterion("Bsex is not null");
            return (Criteria) this;
        }

        public Criteria andBsexEqualTo(String value) {
            addCriterion("Bsex =", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexNotEqualTo(String value) {
            addCriterion("Bsex <>", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexGreaterThan(String value) {
            addCriterion("Bsex >", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexGreaterThanOrEqualTo(String value) {
            addCriterion("Bsex >=", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexLessThan(String value) {
            addCriterion("Bsex <", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexLessThanOrEqualTo(String value) {
            addCriterion("Bsex <=", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexLike(String value) {
            addCriterion("Bsex like", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexNotLike(String value) {
            addCriterion("Bsex not like", value, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexIn(List<String> values) {
            addCriterion("Bsex in", values, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexNotIn(List<String> values) {
            addCriterion("Bsex not in", values, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexBetween(String value1, String value2) {
            addCriterion("Bsex between", value1, value2, "bsex");
            return (Criteria) this;
        }

        public Criteria andBsexNotBetween(String value1, String value2) {
            addCriterion("Bsex not between", value1, value2, "bsex");
            return (Criteria) this;
        }

        public Criteria andBipIsNull() {
            addCriterion("Bip is null");
            return (Criteria) this;
        }

        public Criteria andBipIsNotNull() {
            addCriterion("Bip is not null");
            return (Criteria) this;
        }

        public Criteria andBipEqualTo(String value) {
            addCriterion("Bip =", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipNotEqualTo(String value) {
            addCriterion("Bip <>", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipGreaterThan(String value) {
            addCriterion("Bip >", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipGreaterThanOrEqualTo(String value) {
            addCriterion("Bip >=", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipLessThan(String value) {
            addCriterion("Bip <", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipLessThanOrEqualTo(String value) {
            addCriterion("Bip <=", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipLike(String value) {
            addCriterion("Bip like", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipNotLike(String value) {
            addCriterion("Bip not like", value, "bip");
            return (Criteria) this;
        }

        public Criteria andBipIn(List<String> values) {
            addCriterion("Bip in", values, "bip");
            return (Criteria) this;
        }

        public Criteria andBipNotIn(List<String> values) {
            addCriterion("Bip not in", values, "bip");
            return (Criteria) this;
        }

        public Criteria andBipBetween(String value1, String value2) {
            addCriterion("Bip between", value1, value2, "bip");
            return (Criteria) this;
        }

        public Criteria andBipNotBetween(String value1, String value2) {
            addCriterion("Bip not between", value1, value2, "bip");
            return (Criteria) this;
        }

        public Criteria andBpwdIsNull() {
            addCriterion("Bpwd is null");
            return (Criteria) this;
        }

        public Criteria andBpwdIsNotNull() {
            addCriterion("Bpwd is not null");
            return (Criteria) this;
        }

        public Criteria andBpwdEqualTo(Integer value) {
            addCriterion("Bpwd =", value, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdNotEqualTo(Integer value) {
            addCriterion("Bpwd <>", value, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdGreaterThan(Integer value) {
            addCriterion("Bpwd >", value, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdGreaterThanOrEqualTo(Integer value) {
            addCriterion("Bpwd >=", value, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdLessThan(Integer value) {
            addCriterion("Bpwd <", value, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdLessThanOrEqualTo(Integer value) {
            addCriterion("Bpwd <=", value, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdIn(List<Integer> values) {
            addCriterion("Bpwd in", values, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdNotIn(List<Integer> values) {
            addCriterion("Bpwd not in", values, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdBetween(Integer value1, Integer value2) {
            addCriterion("Bpwd between", value1, value2, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBpwdNotBetween(Integer value1, Integer value2) {
            addCriterion("Bpwd not between", value1, value2, "bpwd");
            return (Criteria) this;
        }

        public Criteria andBimageIsNull() {
            addCriterion("Bimage is null");
            return (Criteria) this;
        }

        public Criteria andBimageIsNotNull() {
            addCriterion("Bimage is not null");
            return (Criteria) this;
        }

        public Criteria andBimageEqualTo(String value) {
            addCriterion("Bimage =", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageNotEqualTo(String value) {
            addCriterion("Bimage <>", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageGreaterThan(String value) {
            addCriterion("Bimage >", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageGreaterThanOrEqualTo(String value) {
            addCriterion("Bimage >=", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageLessThan(String value) {
            addCriterion("Bimage <", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageLessThanOrEqualTo(String value) {
            addCriterion("Bimage <=", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageLike(String value) {
            addCriterion("Bimage like", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageNotLike(String value) {
            addCriterion("Bimage not like", value, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageIn(List<String> values) {
            addCriterion("Bimage in", values, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageNotIn(List<String> values) {
            addCriterion("Bimage not in", values, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageBetween(String value1, String value2) {
            addCriterion("Bimage between", value1, value2, "bimage");
            return (Criteria) this;
        }

        public Criteria andBimageNotBetween(String value1, String value2) {
            addCriterion("Bimage not between", value1, value2, "bimage");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}